/*
 * Copyright (c) 2011, Brookhaven National Laboratory
 * All rights reserved.
 * The software in this package is published under the terms
 * of the BSD license a copy of which has been included with
 * this distribution in the license.txt file.
 */

#include "oxtypes/impl/PrimitiveTypesImpl.h"

#include "dds/type/dynamic/detail/DynamicType.h"
#include "oxtypes/delegate/DynamicType.h"

namespace oxtypes { namespace impl {

BooleanTypeImpl::BooleanTypeImpl() : DynamicTypeImpl(){

 oxtypes::delegate::DynamicType* dt = new oxtypes::delegate::DynamicType();

 dt->td.name("Boolean");
 dt->td.kind(dds::type::BOOLEAN_TYPE);

 d_ = dds::type::dynamic::detail::DynamicType(dt);  
}

Int32TypeImpl::Int32TypeImpl() : DynamicTypeImpl(){

 oxtypes::delegate::DynamicType* dt = new oxtypes::delegate::DynamicType();

 dt->td.name("Int32");
 dt->td.kind(dds::type::INT_32_TYPE);

 d_ = dds::type::dynamic::detail::DynamicType(dt);  
}

Int64TypeImpl::Int64TypeImpl() : DynamicTypeImpl(){

 oxtypes::delegate::DynamicType* dt = new oxtypes::delegate::DynamicType();

 dt->td.name("Int64");
 dt->td.kind(dds::type::INT_64_TYPE);

 d_ = dds::type::dynamic::detail::DynamicType(dt);  
}


}}
